home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 20 / Cream of the Crop 20 (Terry Blount) (1996).iso / games / footb110.zip / IGMWRITE.DOC < prev    next >
Text File  |  1996-03-21  |  20KB  |  379 lines

  1.                  Franchise Football IGM Author Documentation
  2.                                by Scott Snella
  3.                      Internet: aq239@detroit.freenet.org
  4.                            or: bg229@scn.org
  5.  
  6. Table of Contents:
  7.  
  8.         [1] What Franchise Football Creates
  9.         [2] The Data Structures and File Formats
  10.         [3] Linking your IGM to Franchise Football
  11.         [4] Additional Information
  12.  
  13. [1] What Franchise Football Creates
  14.  
  15.         Franchise Football creates two files on exit of the game VIA
  16.         IGM execution.  The first file is a custom dropfile called
  17.         IGMINFO.#, where the # is the node which the user is currently
  18.         operating under.  This files format is as follows.
  19.  
  20.                 IGMINFO.# format:
  21.  
  22.                         System Name
  23.                         Sysop Name
  24.                         (Blank)
  25.                         COM Address
  26.                         Baud
  27.                         (Blank)
  28.                         Username
  29.                         (Blank)
  30.                         User Location
  31.                         User ANSI
  32.                         User Security
  33.                         User Timelimit
  34.                         Coach Number
  35.                         Node
  36.                         COM IRQ
  37.                         Port
  38.                         COM Method
  39.                         REGISTERED/UNREGISTERED
  40.  
  41.         The blank lines that are included are for compatibility purposes.
  42.         The first 12 lines follow the DORINFO#.DEF format, so if you have a
  43.         routine that reads that format, it may be possible to extract that
  44.         information from the IGMINFO.# file.  The last 6 lines are added for
  45.         your convenience, included in them are the Coach Number that is
  46.         currently dropping to the IGM, what node they are using, and the
  47.         very last option, if Franchise Football is registered.  I ask that
  48.         if the Game is not registered, either disable options in your IGM,
  49.         or add some sort of notice that encourages users to register.  I am
  50.         not disabling the IGM section in unregistered versions, and therefore
  51.         ask that you do this.
  52.  
  53.         NOTE:  The IGMINFO.# dropfile is a strait text file and all lines are
  54.         terminated with the new line character.
  55.  
  56.         The second file that FFBL creates is called DO#.BAT (in which the #
  57.         once again denotes the node number).  This file is simply a batch
  58.         file that changes to your IGM drive and directory, and executes the
  59.         program.  For more information on how this file gets it's information
  60.         please read section [3] Linking your IGM to Franchise Football.
  61.  
  62. [2] Data Structures and File Formats
  63.  
  64.         Unless otherwise noted (as the above IGMINFO.#) all data files are
  65.         stored using a binary method, and all data files also begin with a
  66.         header that merely holds a two byte (C type int) number that is the
  67.         total records stored in that file.
  68.  
  69.         For Example, the owners file, called OWNERS.FBL is all the vital
  70.         information on the Franchise Football owners.  The file is in the
  71.         following structure.
  72.  
  73.         Number of Owners
  74.         Owner #1
  75.         Owner #2
  76.         .
  77.         .
  78.         .
  79.         Owner #Number of Owners - 1
  80.         Owner #Number of Owners
  81.  
  82.         If you forget to account for the two byte header all information will
  83.         be wrong.  The four major data files (and several others), OWNERS.FBL,
  84.         OFFICE.FBL, OFFENSE.FBL and DEFENSE.FBL all follow this format.
  85.  
  86.         Although Franchise Football was written entirely in C/C++, IGM's may
  87.         be written in any language.  The following are the major structures
  88.         for the game.
  89.  
  90.         coach_data:    (could also be called owner_data)
  91.                 int number;         // Coach number-used to link all records
  92.                 int unused;         // Unused (from previous version)
  93.                 char name[40];      // Username
  94.                 char nickname[25];  // Team nickname
  95.                 char city[25];      // Team city
  96.                 char stadium[40];   // Stadium Name
  97.                 int wins;           // Team Wins
  98.                 int losses;         // Team Losses
  99.                 char computer;      // Computer Player 1=YES 0=NO
  100.                 char password[7];   // Player Password for LAN and Security
  101.                 char offense1;      // Offensive set #1 (1-8)
  102.                 char offense2;      // #2 (1-8)
  103.                 char offense3;      // #3 (1-8)
  104.                 char defense1;      // Defensive set #1 (1-8)
  105.                 char defense2;      // #2 (1-8)
  106.                 char defense3;      // #3 (1-8)
  107.                 int points_for;     // Total Points for
  108.                 int points_against; // Total Points Against
  109.                 char streak;        // Winning/Losing Streak <0 Losing >0 Win
  110.                 char free_agent_days; // How long ago a free agent was signed
  111.                 char extra[30];     // Extra bytes
  112.  
  113.                 NOTE: Several items should not be edited.  Wins, Losses,
  114.                       number, name, computer, password, points for,
  115.                       points against and streak should not be changed, but
  116.                       can be read to yield important information.  All
  117.                       items in "()" are the valid values for the given items
  118.                       changing those to any other values may result in
  119.                       errors.  I reserve the right to use any or all of the
  120.                       extra bytes at the end, or in the middle of this
  121.                       structure.  Do not use any of these to store data for
  122.                       your IGM's.  They are not guaranteed to be free in
  123.                       future versions.
  124.  
  125.         office_data:
  126.                 char number;       //  Team Number (coach number)                 
  127.                 long money;        //  Cash (1-2,000,000,000)                
  128.                 long bank;         //  Money in the Bank (1-2,000,000,000)
  129.                 long attendance;   //  Last game attend (1-2,000,000,000)
  130.                 long max_capacity; //  Max attendance (1-2,000,000,000)
  131.                 int ticket_price;  //  Price per ticket (0-32000)
  132.                 int fame;          //  Fame of team rating (0-32000)
  133.                 char concession;   //  concession type (1-10)
  134.                 char promotion;    //  promotion type (1-10)
  135.                 char publicity;    //  publicity type (1-10)
  136.                 char merchandise;  //  Merchandising level (1-10)
  137.                 char covert;       //  covert operations (1-127) (not used)
  138.                 char stadium_type; //  type of stadium owned (1-10)
  139.                 long salary_cap;   //  total of all players salaries on team
  140.                 char extra[46];    //  extra
  141.  
  142.                 NOTE:  Other than the number and salary_cap, all items in
  143.                        this structure may be edited and saved to allow your
  144.                        IGM to effect game play.  Please stay within the limits
  145.                        following each of the items, enclosed in "()"
  146.  
  147.         player_data:
  148.                 char team_number;            // Team Number (coach number)  
  149.                 char first_name[STRLENGTH];  // Player First Name
  150.                 char last_name[STRLENGTH];   // Player Last Name
  151.                 char age;                    // Player Age (1-127)
  152.                 char height;                 // height (1-127) in inches
  153.                 int weight;                  // weight (1-32000) in pounds
  154.                 char position;               // position (see chart below)
  155.                 char lineup_string;          // Starter? 0=No 1=Yes        
  156.                 char traded;                 // Is Player offered for trade?
  157.                 char roster_slot;            //
  158.                 char trained_today;          // Has player trained today 0,1
  159.                 char off_def;                // Offensive/Defensive Player
  160.                 long salary;